<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<META NAME="generator" CONTENT="http://txt2tags.sf.net">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8">
<TITLE>DRBL + Ubuntu 网络教室安装与管理</TITLE>
</HEAD><BODY BGCOLOR="white" TEXT="black">
<P ALIGN="center"><CENTER><H1>DRBL + Ubuntu 网络教室安装与管理</H1>
<FONT SIZE="4">
<I>王万清 wwq0327 at gmail dot com</I><BR>
Ver 1.0 20110404 
</FONT></CENTER>

<HR NOSHADE SIZE=5>
<H1>1. 声明</H1>
<P>
本作品采用<A HREF="http://creativecommons.org/licenses/by-nc-sa/2.5/cn/">知识共享署名-非商业性使用-相同方式共享 2.5 中国大陆许可协议</A>进行许可。
</P>
<H1>2. 缘起</H1>
<P>
在<A HREF="http://sociallearnlab.org">教育大发现社区</A>新一期的简报中，在<A HREF="http://goo.gl/Lbyq5">讨论专题：开放教育资源</A>中，看到了这样一则信息<A HREF="http://forum.ubuntu.org.cn/viewtopic.php?f=1&amp;t=294053">《中小学信息技术开源：Ubuntu10.04+WindowsXP》</A>。在国内搞Linux技术的也大有人在，但关于教育方面的，如组建网络教室等方面，笔者以前搜索过，真确实不多，而这位名叫“行者老邓”的信息技术教师，却走在了国内Linux教育的前面，值得佩服。老邓在Ubuntu中通过DRBL组建起了Linux无盘网络教室，从上传的图片中看来，正在投入使用，俺也先借用下他的图片：
</P>
<P>
<IMG ALIGN="middle" SRC="imgs/p1.jpg" BORDER="0" ALT="">
</P>
<P>
<IMG ALIGN="middle" SRC="imgs/p2.jpg" BORDER="0" ALT="">
</P>
<P>
笔者在去年也曾尝试过使用Ubuntu+DRBL来组建一个无盘网络，当然不是在学校的网络教室中实战，而是想通过一台电脑再外加VirtualBox来进进安装尝试，不过失败了，没能成功。
</P>
<P>
后来再教育大发现的SLL-FOSS社区中，白清杰说到正在进行相关尝试，同时说成过了，我本想等着他们成果出来了，然后再动手尝试。他们在邮列表中说成功了，我想取点经验，打算在这学校到学校网络教室里安装，后来又觉得技术上的问题，可能难以办到，加之自己确实缺少些勤奋，所以这事一直没去做。
</P>
<P>
看到这则信息，俺又有力量了！
</P>
<H1>3. 简介</H1>
<H2>3.1. Ubuntu</H2>
<P>
<A HREF="http://www.ubuntu.org.cn">Ubuntu</A>确实不需要多作介绍，但对于同行中大多数不清楚Ubuntu甚至Linux是何物的人来说，还是有必要简单的说一下：
</P>
<UL>
<LI>Ubuntu 不是M$ Windows;
<LI>Ubuntu 是Linux 的发行版之一;
<LI>Ubuntu 相对于其它Linux来说，体验上更为优异一些;
<LI>Ubuntu 是免费的;
<LI>Ubuntu 对于Linux初学者来说更加合适;
<LI>Ubuntu 可适用于桌面用户、服务器、程序开发者、移动上网本等。
</UL>

<P>
<B>Ubuntu获取</B>
</P>
<UL>
<LI>官方网站：<A HREF="http://www.ubuntu.org.cn">http://www.ubuntu.org.cn</A>
<LI>下载地址：<A HREF="http://www.ubuntu.org.cn/desktop/get-ubuntu/download/">http://www.ubuntu.org.cn/desktop/get-ubuntu/download/</A>
<LI>Ubuntu知识库：<A HREF="http://wiki.ubuntu.org.cn">http://wiki.ubuntu.org.cn</A>
</UL>

<P>
<B>教育大发现社区Ubuntu信息</B>
</P>
<UL>
<LI><A HREF="http://sociallearnlab.org/wiki/index.php?title+Sll-foss&amp;variant+zh-cn">http://sociallearnlab.org/wiki/index.php?title+Sll-foss&amp;variant+zh-cn</A>
</UL>

<P>
<B>遇到问题请Google之</B>
</P>
<P>
如果你第一次使用Ubuntu或Linux，遇到问题是很正常的，如果不理解，可以想像下你当时是怎么使用Windows的，当上面所提供的一些网站不能解决你所遇之问题时，请Google之！
</P>
<H2>3.2. DRBL</H2>
<H3>3.2.1. DRBL简介</H3>
<P>
以下文字来自于<A HREF="http://drbl.nchc.org.tw/introduction/">國家高速網路與計算中心</A>:
</P>
<P>
DRBL (Diskless Remote Boot in Linux)是一個自由軟體，由國家高速網路與計算中心所開發，主要功能是安裝了此軟體的Linux伺服器，就可以同時提供數十台電腦操作與使用。管理者所需要做得就是在伺服器上安裝好Linux之後，再裝好DRBL，用戶端電腦不需要有硬碟，不需安裝軟體，只要透過PXE網路開機，就可以直接使用了伺服器端提供的Linux了。DRBL的特色包含:
</P>
<UL>
<LI>支援多元化的資訊教育，與現有系統共存，電腦教室可以很方便與快速的切換作業系統
<LI>用戶端電腦可以不需要有硬碟，有硬碟DRBL也可以充分利用
<LI>集中管理，安裝1台就等於安裝多台(~40台)，下一個指令就可以對多台電腦做動作
<LI>內建回復系統，可以同時複製或是還原多台(~40台)用戶端電腦硬碟裡的作業系統(Linux, MS Windows 9X/2K/XP皆可) 
</UL>

<H3>3.2.2. DRBL硬件要求</H3>
<UL>
<LI>伺服器最低規格:CPU 450 MHz，記憶體256 MB，fast ethernet(100Mbps)網路卡多張。建議規格:CPU 2.6 GHz，記憶體1 GB，Gigabits網路卡4張。
<P></P>
<LI>客戶端最低規格:CPU 300 MHz，記憶體128 MB(視伺服器所選用的GNU/Linux版本而定，可能需要更高階的硬體)，fast ethernet(100Mbps)網路卡，若是新購電腦的話建議直接買有支援網路開機(PXE)的網卡或是內建PXE功能網卡的主機板。
<P></P>
<LI>網路連接設備最低需求:fast ethernet(100Mbps)的交換器。建議規格: 以40人的電腦教室為例,兩台24 port fast ethernet(100Mbps)的交換器，每台交換器上各有2個Gigabits ports。
<P></P>
+++ DRBL架构及原理介绍 +++
<P></P>
关于DRBL的架构及原理介绍，请移步这里（精巧地址）：<A HREF="http://goo.gl/ou6e5">http://goo.gl/ou6e5</A>
<P></P>
</UL>

<OL>
<LI>资源 +
<P></P>
本文所用资源，皆来自于网络与本人自己。虽然本文并不想说太多的关于Ubuntu的安装与设置的问题，但我想即于想试一下，但却不知道如何去做的朋友来说，我还是想罗嗦几句关于Ubuntu的事。但我们的主要精力，还是会放在如何安装DRBL及如何管理的问题上面。
<P></P>
如你所猜，关于Ubuntu的，你可以用上面我提到的Wiki及Google解决，关于DRBL的，我想下面的链接也应该会有用：
<P></P>
</OL>

<UL>
<LI>DRBL安装：<A HREF="http://drbl.nchc.org.tw/one4all/desktop/#install">http://drbl.nchc.org.tw/one4all/desktop/#install</A>
<LI>DRBL管理与使用：<A HREF="http://drbl.nchc.org.tw/one4all/desktop/drbl-cmd-list.php">http://drbl.nchc.org.tw/one4all/desktop/drbl-cmd-list.php</A>
<LI>DRBL常见问题：<A HREF="http://drbl.nchc.org.tw/faq/">http://drbl.nchc.org.tw/faq/</A>
<LI>DRBL与Clonezilla资料：<A HREF="http://drbl.nchc.org.tw/lecture/">http://drbl.nchc.org.tw/lecture/</A> 
<LI>本人收集并存放于麦库的公开资料，虽多来自于以上网站的资料，但也有些不同的：<A HREF="http://goo.gl/hhKVj">http://goo.gl/hhKVj</A>
</UL>

<H1>4. 自体验</H1>
<P>
使用Linux总是需要一定的冒险精神才行，但话说回来，学习新的东西，都必然存在冒险，因为我们对于未知的东西总是有限的，总是会出现错误的。对于DRBL的安装，我想先在Ubuntu系统中使用VirtualBox体验安装装一把，当觉得有一定的把握、不至于一切都存在大量未知的时候，然后再进行实战。计算机让我们去冒险，但又努力将危险降到最低，让安装时可能产生的破坏力不至于让我们手足无措。
</P>
<H3>4.0.1. Ubuntu安装及更新</H3>
<UL>
<LI>在你的硬盘空间上划出不少于20G安装Ubuntu，如果你打算长期使用，请把分区做大一点。
<LI>保证你的网络是畅通的。
<LI>为了保证我们能在相同的平台上体验，请你安装Ubuntu 10.10版本。
<LI>安装成功后，请将Ubuntu更新到最新状态。方法：sudo apt-get update，然后sudo apt-get upgrade，两条命令都在终端下执行。同时建议换用国内速度较快的源，如：<A HREF="http://mirrors.163.com">163的源</A>。
</UL>

<H3>4.0.2. 在Ubuntu上安装VirtualBox</H3>
<P>
VirtualBox可到这里下载：
</P>
<P>
<A HREF="http://www.virtualbox.org/wiki/Downloads">http://www.virtualbox.org/wiki/Downloads</A>
</P>
<P>
下载完成后，可双击安装。
</P>
<H3>4.0.3. 关于VirtualBox的使用及设置</H3>
<P>
一年前我尝试过台式机+VirtualBox（以下简称：VBox）来安装试用DRBL的，但没成功，当时没把原因入方法搞清楚，认为既然VBox能虚拟成为计算机，就应该能从网络启动，但结果却失败了。再次从DRBL网站上才了解到如何个设置法，才能达到如此目的。前然，你先得会VBox的基本使用了。
</P>
<P>
<B>VirtualBox使用</B>
</P>
<P>
VBox如何虚拟出一台计算机，SLL-FOSS收集了一些教程，大家可能参考下：
</P>
<UL>
<LI><A HREF="http://news.newhua.com/news1/Teach_tools/2009/629/096291647384HFJFI2CF42HHIC3BE6CI8B50IHE30F3DD3KIFDF6E0KI.html">免费中文虚拟机VirtualBox</A>
</UL>

<P>
VBox是个好东西呀，特别是对于常折腾计算，又怕每期使用的平台设置起来很麻烦的朋友，一定都得好好学学。如果遇到问题，照样：请Google之！
</P>
<P>
<B>VirtualBox设置</B>
</P>
<P>
安装完VBox后，还需要进行一些设置。
</P>
<OL>
<LI>将自己添加到VBox用户组，命令：
<P></P>
<CODE>sudo adduser 'username' vboxusers</CODE>，其中username，为你在服务所登录的用户名。
<P></P>
<LI>配置tun/tap虚拟网卡：
  <UL>
  <LI>下载配置程序config-tun.sh，下载地址：
  <P></P>
    <A HREF="http://goo.gl/OEsHr">http://goo.gl/OEsHr</A>
  <P></P>
  <LI>执行安装程序：
<PRE>
      sudo apt-get install uml-utilities; sudo chmod +x config-tun.sh; sudo ./config-tun.sh start
</PRE>
    安装成功后，你会看到类似于下面的提示信息：
<PRE>
      tap0  Link encap:以太网  硬件地址 8a:68:a6:85:dd:84  
            inet 地址:192.168.125.254  广播:192.168.125.255  掩码:255.255.255.0
            inet6 地址: fe80::8868:a6ff:fe85:dd84/64 Scope:Link
            UP BROADCAST RUNNING PROMISC MULTICAST  MTU:1500  跃点数:1
            接收数据包:0 错误:0 丢弃:0 过载:0 帧数:0
            发送数据包:0 错误:0 丢弃:152 过载:0 载波:0
            碰撞:0 发送队列长度:500 
            接收字节:0 (0.0 B)  发送字节:0 (0.0 B)
</PRE>
  <LI>这个安装只是生成了一个虚拟设备而已，要配合DRBL 的drblpush配置程序后才能使用。
  <P></P>
  </UL>
<LI>在VBox设置中，选择网络， 在“网络连接1”中，网络是被默认启动了的。如图所示：
<P></P>
<IMG ALIGN="middle" SRC="imgs/vbox-setup-net.png" BORDER="0" ALT="">
<P></P>
  <UL>
  <LI>连接方式，请选择“Brdged Adapter”;
  <LI>界面名称，请选择“tap0”
  <LI>后面的高级设置可以不管。
  </UL>
</OL>

<P>
设置好后，确定，等待DRBL的最后设置。
</P>
<P>
到此为止，关于VBox的设置就算完成了。
</P>
<H3>4.0.4. DRBL 安装</H3>
<P>
假设置你上面准备工作都做好了，那到我们就正式进入DRBL的安装了。安装的过程来自于<A HREF="http://drbl.nchc.org.tw/one4all/desktop/">DRBL安装说明</A>，当然只是简省的。人家说得很详细了，我没必要再重复说，所以只拣关键的地方说下。
</P>
<OL>
<LI>安装apt-key：在终端下执行：
<P></P>
<CODE>wget -q http://drbl.nchc.org.tw/GPG-KEY-DRBL -O- | sudo apt-key add -</CODE>
<P></P>
<LI>添加更新源：可用编辑器打开<CODE>/etc/apt/sources.list</CODE>更新源文件，笔者喜欢用gedit，需要root权限。添加下面两条：
<PRE>
  deb http://free.nchc.org.tw/ubuntu maverick main restricted universe multiverse
  deb http://free.nchc.org.tw/drbl-core drbl stable
</PRE>
<LI>执行更新：
<P></P>
<CODE>sudo apt-get update</CODE>
<P></P>
<LI>安装DRBL：
<P></P>
<CODE>sudo apt-get install drbl</CODE>
</OL>

<P>
通过以上步骤，DRBL就安装到你的Ubuntu电脑上了，但这只是个开始！接着下面的来。
</P>
<H3>4.0.5. DRBL 相关模块安装</H3>
<P>
这一步就一条命令，却直接关系到DRBL能否真正安装成功，因此请你有点耐心，慢慢的看，慢慢的想，如果实在性子大急或是自己不能作出准确判断的时候，就只接<B>回车</B>，接受默认安装。
</P>
<P>
照样，请保证你网络的畅通，这一步需要安装的程序挺多，安装命令：
</P>
<P>
<CODE>sudo /opt/drbl/sbin/drblsrv -i</CODE>
</P>
<P>
DRBL也提供了一些安装例子，如有需要请移步这里：<A HREF="http://drbl.nchc.org.tw/one4all/desktop/examples/">http://drbl.nchc.org.tw/one4all/desktop/examples/</A>
</P>
<P>
幸好关键的地方都是中文的，所以大家能读懂，实在理解不了，再次提醒直接<B>回车</B>!
</P>
<P>
如果你不喜欢自己一直按回车，也可以用<CODE>sudo /opt/drbl/sbin/drbl4imp</CODE>
</P>
<P>
直接接受默认安装。笔者今天安装很顺利，两次都成功了的。
</P>
<H3>4.0.6. 在服务器上创建客户端系统</H3>
<P>
这里就用到了刚才用VBox所创建的一个tap0卡了。这一步，仍然是一条命令，然后N个问题，需要仔细一些了，成败关键呀。
</P>
<P>
执行命令：
</P>
<P>
<CODE>sudo /opt/drbl/sbin/drblpush -i</CODE>
</P>
<P>
大多数地方只默认回车即可，有几个地方需要注意的：
</P>
<OL>
<LI>创建的客户端数，默认12个，不需要这么多，咱体验下，两个就OK了。所以输入2再加车。
<LI>图形还是文本界面，请选图形。
<LI>一切OK的话，最后会有安装成功的提示，对于所提示文字，请看得认真一点。
</OL>

<H3>4.0.7. 在VBox上运行客户端</H3>
<P>
请认真核对前面关于VBox设置的信息，确保网络及启动选项的正确性，然后点击运行。如果幸运的话，你会看到以下界面：
</P>
<P>
<IMG ALIGN="middle" SRC="imgs/vbox1.png" BORDER="0" ALT="">
</P>
<P>
<IMG ALIGN="middle" SRC="imgs/vbox3.png" BORDER="0" ALT="">
</P>
<P>
如果你不幸看到下面的这个界面，那请好好检查下你的安装过程及VBox的网络设置：
</P>
<P>
<IMG ALIGN="middle" SRC="imgs/vbox2.png" BORDER="0" ALT="">
</P>
<H3>4.0.8. 登录入密码</H3>
<P>
<B>设置用户密码</B>
</P>
<P>
<CODE>sudo /opt/drbl/sbin/drbl-login-switch -a -p 3</CODE>
</P>
<P>
后面的数字用来限定密码的位数。
</P>
<P>
<B>查看分配的密码</B>
</P>
<P>
<CODE>sudo cat /etc/drbl/auto_login_id_passwd.txt</CODE>
</P>
<H3>4.0.9. DRBL 进阶设置</H3>
<P>
DRBL通过一些指令对用户端电脑进行集中管理，详细的指令，请参考<A HREF="http://drbl.nchc.org.tw/one4all/desktop/drbl-cmd-list.php">这里</A>，其中最常用的是<CODE>/opt/drbl/sbin/dsc</CODE>命令。
</P>
<H4>4.0.9.1. 用户端电脑开机模式</H4>
<P>
用户开机模式可通过<CODE>/opt/drbl/sbin/dsc</CODE>进行设置，需root权限。执行后，如下图所示：
</P>
<P>
<IMG ALIGN="middle" SRC="imgs/dsc001.png" BORDER="0" ALT="">
</P>
<P>
这里可对所有用户端电脑或部份（IP地址范围内）的电脑进行管理。选择第一项后，可以看到全部的管理项：
</P>
<P>
<IMG ALIGN="middle" SRC="imgs/dsc002.png" BORDER="0" ALT="">
</P>
<H3>4.0.10. 升级DRBL</H3>
<P>
以下内容来自于：<A HREF="http://drbl.nchc.org.tw/one4all/desktop/#upgrade">http://drbl.nchc.org.tw/one4all/desktop/#upgrade</A>
</P>
<P>
日後如要升級DRBL的話，可以這樣做:
</P>
<OL>
<LI>備份重要的檔案，例如/etc/drbl下所有的檔案，以及/etc/dhcpd.conf或是/etc/dhcp3/dhcpd.conf等檔案以備不時之需
<LI>執行/opt/drbl/sbin/drblsrv -u來移除所有已經安裝過的DRBL相關檔案
<LI>回到步驟2，下載新版的DRBL主程式，然後依照DRBL安裝的步驟，重新安裝一次(/opt/drbl/sbin/drblsrv -i與/opt/drbl/sbin/drblpush -i)。
</OL>

<P>
如果版本還算接近的話，也許可以嘗試可以直接把相關的package升級即可，例如使用apt-get update; apt-get upgrade或是yum upgrade。但是不建議這樣做，因為，有不少檔案，只有在執行完drblsrv與drblpush之後，才會複製給用戶端的電腦使用。 
</P>
<H3>4.0.11. 移除DRBL</H3>
<P>
如果要从服务器上移除DRBL，只需执行<CODE>sudo /opt/drbl/sbin/drblsrv -u</CODE>即可。
</P>
<H1>5. 实战</H1>
<H1>6. 讨论</H1>
<H2>6.1. 安装</H2>
<H2>6.2. 为什么要用自由软件</H2>
<P>
我想JW几句的，但觉得还是难得说清楚，各有所爱吧，但有前人说过：
</P>
<UL>
<LI>ZQ：教育必须使用自由软件：<A HREF="http://code.google.com/p/sociallearnlab/wiki/ZqSayEduFreeSoftware">http://code.google.com/p/sociallearnlab/wiki/ZqSayEduFreeSoftware</A>
<LI>台湾兄弟的PDF资料：<A HREF="http://drbl.nchc.org.tw/lecture/20110317_NCHC_Basic/drbl-clonezilla.Basic_v15.pdf">http://drbl.nchc.org.tw/lecture/20110317_NCHC_Basic/drbl-clonezilla.Basic_v15.pdf</A> 精巧地址：<A HREF="http://goo.gl/B6M3v">http://goo.gl/B6M3v</A>
</UL>

<P>
以上两个皆与教育相关的，再来一个直接与咱个人有关的：
</P>
<UL>
<LI>完全用 Gnu/Linux 工作：<A HREF="http://i.linuxtoy.org/docs/guide/ch06.html">http://i.linuxtoy.org/docs/guide/ch06.html</A>
</UL>

<P>
并非在此传教，确实谁用谁好。
</P>
<HR NOSHADE SIZE=5>
<P>
WyattWang(王万清):
</P>
<UL>
<LI>Blog：<A HREF="http://wangwanqing.com">http://wangwanqing.com</A>
<LI>Weibo：<A HREF="http://t.cn/wyatt">http://t.cn/wyatt</A>
</UL>

<P>
本文使用<A HREF="http://txt2tags.org/">txt2tags</A>编辑并发布！
</P>

<!-- html code generated by txt2tags 2.5 (http://txt2tags.sf.net) -->
<!-- cmdline: txt2tags -t html /home/wyatt/wlife/drbl/drbl.t2t -->
</BODY></HTML>
